package com.tebiecloud.base.client.service;

import com.tebiecloud.base.client.model.IpLimitApi;
import com.tebiecloud.base.client.model.RateLimitApi;
import com.tebiecloud.base.client.model.entity.GatewayRoute;
import com.tebiecloud.common.model.ResultBody;
import org.springframework.web.bind.annotation.GetMapping;

import java.util.List;

/**
 * 网关服务接口
 * @Author: tebie
 * @Date: 2019-08-08 16:36
 */
public interface IGatewayServiceClient {

    /**
     * 获取接口黑名单列表
     * @return
     */
    @GetMapping("/feign/gateway/listblack")
    ResultBody<List<IpLimitApi>> getBlackList();

    /**
     * 获取接口白名单列表
     * @return
     */
    @GetMapping("/feign/gateway/listwhite")
    ResultBody<List<IpLimitApi>> getWhiteList();

    /**
     * 获取限流列表
     * @return
     */
    @GetMapping("/feign/gateway/listratelimit")
    ResultBody<List<RateLimitApi>> getRateLimitList();

    /**
     * 获取路由列表
     * @return
     */
    @GetMapping("/feign/gateway/listroute")
    ResultBody<List<GatewayRoute>> getRouteList();

}
